package com.example.blog.module.controller;


import com.example.blog.module.entity.VO.Result;
import com.example.blog.module.service.SysUserService;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author zjx
 * @since 2022-11-22
 */
@RestController
@RequiredArgsConstructor
@RequestMapping("/users")
public class SysUserController {

    private final SysUserService sysUserService;

    /**
     * 获取当前用户信息
     * @param token
     * @return
     */
    // @RequestBody主要用来接收前端传递给后端的json字符串中的数据的(请求体中的数据的)；而最常用的使用请求体传参的无疑是POST请求了，所以使用@RequestBody接收数据时，一般都用POST方式进行提交。
    // @RequestHeader获取头部信息
    @GetMapping("currentUser")
    public Result currentUser(@RequestHeader("Authorization") String token){
        return sysUserService.findUserByToken(token);
    }
}

